Data communication systems exchange user data for user devices to provide various data communication services. The user devices may be phones, computers, media players, and the like. The data communication services might trust be media streaming, audio/video conferencing, data messaging, or internet access. Software-Defined Networks (SDNs) are a popular data communication system. SDNs are made of applications, controllers, and data-plane machines.
SDN applications interact with users and other systems to deliver control-plane management of communication networks and users in the SDN. The SDN applications exchange SDN signaling, such as open flow, with SDN controllers to implement the control-plane management. The SDN controllers exchange SDN signaling like open flow with SDN data switches. The SDN data switches process user data flows based on Flow Description Tables (FDTs). The FDTs correlate header data like destination address to flow operations like drop or forward.
The SDN data switches generate Key Performance Indicators (KPIs) like header data, packet counts, data latency, processor usage, memory capacity, and the like. The SDN switches transfer the KPIs to a Proxy Correlation Index (PCI) server. The PCI server processes the KPIs to generate PCIs that characterize SDN operations. The typical PCI is generated from multiple KPIs that are weighted and summed to generate an index score. Another PCI could be the average of other PCIs that are weighted and normalized. The PCI server transfers the PCIs to an SDN application and/or controller. The SDN application and/or controller processes the PCIs to generate FDT updates for the SDN data switches.
Unfortunately, the transfer of KPIs from the data-plane and the transfer of FDT into the data-pane burdens the SDN and delays intelligent feedback control.